The present invention relates to a satellite communication system for executing routing procedure to transfer data from one computer to another computer by a relay system using a satellite or satellites. The present invention also relates to a routing method for the satellite communication system, and to a storage device, for a computer, with a program of the routing.
In general, a satellite relay system simultaneously utilizes the same satellite for a plurality of relay connections through the use of multiplexing technology such as the FDMA (Frequency Division Multiple Access) method, the TDMA (Time Division Multiple Access) method (synchronous time division multiplexing method) or the cell based multiplexing (asynchronous time division multiplexing) method.
This satellite relay system will provide the similar functions as that each relay connection has an individual communication line. Since no physical communication line is in fact provided for each relay connection, this communication line is called as a logical channel or a virtual channel.
Such the satellite relay system can provide communication between any computer having functions for transmitting information via satellite and any computer having functions for receiving information via satellite. To realize the communication with respect to a connection determined by the combination of the transmit computer and the receive computer, it is necessary to use a routing method for selecting one of finite number of logical channels provided by the satellite through the use of the multiplexing technology.
As for a conventional routing method for the satellite communication, there is a xe2x80x9cstaticxe2x80x9d routing method which preliminarily allocates logical channels to the respective transmit computers or the respective receive computers in a fixed manner.
Japanese Patent unexamined publication No.9(1997)-64937 describes this xe2x80x9cstaticxe2x80x9d routing method. According to this known method, when the receive computer requests to the transmit computer to transfer data, this receive computer designates an address for a satellite communication and thus the transmit computer establishes routing via the satellite communication line defined by the designated address. In fact, this publication does not clearly teach allocation of the logical channels in the satellite communication line. However, the address for the satellite communication will be apparently used for defining this logical channel because both the transmit and receive computers can use the same logical channel depending upon the address designated by the receive computer. Furthermore, in order to prevent contention between the receive computer in question and another possible receive computers with respect to the same logical channel, it is necessary to exclusively allocate the logical channels to the respective receive computers. Therefore, the publication apparently describes the xe2x80x9cstaticxe2x80x9d routing method.
However this xe2x80x9cstaticxe2x80x9d routing method will limit the number of usable connections, namely the number of combinations of the transmit and receive computers to the finite number of the logical channels which are presented by the relay system through the use of the multiplexing technology.
Since the number of the transmit and receive computers for receiving services in the communication system will increase, it will be necessary to serially use the same logical channel for different connections. A xe2x80x9cdynamicxe2x80x9d routing method which allocates the logical channel dynamically at every communication is served to this end.
U.S. Pat. No. 5,485,464 describes a xe2x80x9cdynamicxe2x80x9d routing method. According to this known method, as shown in FIG. 1, a transmit computer (source user) requests allocation of a logical channel to a computer (network control center) in a satellite relay system, who manages the logical channels, so that the source user is routed to a receive computer (destination user) with the aid of the network control center.
International publication W095/13681 describes another xe2x80x9cdynamicxe2x80x9d routing method. According to this known method, as shown in FIG. 2, a receive computer requests allocation of a logical channel to a connection management computer who manages the logical channels in a satellite relay system, then the connection management computer notifies it to a transmit computer or a service provider, and the transmit computer requests to the connection management computer so as to establish route from the service provider to the receive computer.
In a data communication system called as a client-server model, in general, a client computer (receive computer) always requests data transfer so that a server computer (transmit computer) transmits the data to the client computer. In the event that the same client computer continuously receives a plurality of data from the server computer, in a client-server model constructed to use the satellite relay system, it is desired to maintain the usage of the same logical channel without executing allocation procedure of logical channels at each transfer of data.
However, if the client-server model is constructed in accordance with the xe2x80x9cdynamicxe2x80x9d routing method described in U.S. Pat. No. 5,485,464, the client computer (receive computer) controls second or later transfer whereas it is the server computer (transmit computer) to control allocation of the logical channels executed in the network control center. Thus, when the server computer controls release of the allocation of the logical channel, some problems may occur. For example, in this model, if the same client computer requests next transfer of data to the server computer within a predetermined time period, the same logical channel will be kept to use, whereas if there is no request for next transfer within the time period, the allocation of the logical channel will be released. However, to realize this algorithm, it is necessary to introduce a timer mechanism. In addition, the logical channel cannot be utilized again for the predetermined time period after the client computer finishes its usage causing ineffective usage of the logical channel.
The above-mentioned problems can be solved by the xe2x80x9cdynamicxe2x80x9d routing method described in the international publication WO95/13681, in which allocation/release of the logical channel by the connection management computer is executed in response to requests from the client computer.
However, in the event of xe2x80x9cNet-surfingxe2x80x9d access in the Internet, wherein a client computer continuously receives data from a plurality of server computers, for example two server computers as shown in FIG. 3, this known routing method of WO95/13681 cannot provide that the client computer keeps the same logical channel to use. This is because since the server computer controls allocation/release of the logical channel by the connection management computer in response to the request from the client computer, if the server computer with logical channel allocation functions changes to another one, the same logical channel cannot be kept in use. Therefore, when the client computer receives data from different server computers in for example xe2x80x9cNet-surfingxe2x80x9d access, the routing method of WO95/13681 needs an additional procedure for switching the logical channels used causing delay in start of next transfer of data and also increase of control traffic.
It is therefore an object of the present invention to provide a satellite communication system, a routing method for the satellite communication system, and a storage device storing a program of the routing, whereby problems due to separated location of transfer control function and logical channel allocation function in different computers can be solved.
According to the present invention, a routing method wherein a receive computer or a client computer for requesting transfer of information controls routing but a transmit computer or a server computer does not concern routing procedure is provided.
More particularly, according to the present invention, a satellite communication system includes at least one client computer for requesting transfer of data, at least one server computer for transferring data in response to the request, a relay system using at least one satellite, for providing a plurality of logical channels for communication between the client computer and the server computer, and a management computer for managing the logical channels. The management computer selects one of the logical channels when the client computer requests usage of logical channel, executes routing procedure in the relay system so as to connect the selected logical channel with the client computer, and clears the routing of the logical channel from the server computer to the client computer when the client computer notifies the end of logical channel usage to the management computer.
Also, according to the present invention, a routing method for a satellite communication system which includes a relay system using at least one satellite, for providing a plurality of logical channels for communication between at least one client computer for requesting transfer of data and at least one server computer for transferring data in response to the request, and a management computer for managing the logical channels is provided. The method includes a step of requesting usage of logical channel from the client computer to the management computer before requesting data transfer, a step of selecting one of the logical channels by the management computer in response to the request for logical channel usage, a step of executing, by the management computer, routing procedure in the relay system so as to connect the selected logical channel with the client computer, a step of notifying, from the client computer, the end of logical channel usage to the management computer when the data transfer from the server computer is completed, and a step of clearing, by the management computer, the routing of the logical channel from the server computer to the client computer in response to the notification of the end of logical channel usage.
Furthermore, according to the present invention, a storage device with a program for routing in a satellite communication system which includes a relay system using at least one satellite, for providing a plurality of logical channels for communication between at least one client computer for requesting transfer of data and at least one server computer for transferring data in response to the request is provided. The program includes a step of selecting one of the logical channels when the client computer requests usage of logical channel, a step of executing routing procedure in the relay system so as to connect the selected logical channel with the client computer, and a step of clearing the routing of the logical channel from the server computer to the client computer when the client computer notifies the end of logical channel usage.
Since the client computer, or the receive computer in the satellite relay system, leads routing for the relay system, and the server computer, or the transmit computer, does not concern the routing, no problem due to separation of transfer control functions and logical channel allocation functions occurs resulting effective serial use of the same logical channel to realize for different data transfers.
It is preferred that the system further includes a bidirectional communication link between the management computer and the client computer, and that the request for usage of logical channel from the client computer and the notification of the end of logical channel usage from the client computer are transmitted via the bidirectional communication link.
It is also preferred that, when the routing procedure is executed, the management computer notifies information necessary for using the selected logical channel, to the client computer via the bidirectional communication link.
Preferably, after the routing procedure is executed by the management computer in response to the request for usage of logical channel and before the notification of the end of logical channel usage from the client computer, data are transferred from the server computer to the client computer via the selected logical channel. Since the logical channel is assigned to the client computer, data to be transferred from the server computer to the client computer passes this selected logical channel.
It is also preferred that the relay system has a proxy server for mediating the data transfer between the client computer and the server computers so that data are transferred from the server computers to the client computer via the relay system.
Preferably, after the routing procedure is executed by the management computer in response to the request for usage of logical channel and before the notification of the end of logical channel usage from the client computer, the client computer serially receives a plurality of data from the server computers via the selected logical channel without requesting usage of logical channel again.
Further objects and advantages of the present invention will be apparent from the following description of the preferred embodiments of the invention as illustrated in the accompanying drawings.